import PageTools from './PageTools'
import UploadExcel from './UploadExcel'
import UploadImg from './UploadImg'
import ImgPlaceHolder from './ImgPlaceHolder/index.vue'
import HButton from './HButton/index.vue'
import ScreenFull from './ScreenFull'
import Lang from './Lang'
// 两种插件定义形式

// 1.对象定义
export const pageToolsPlugin = {
  // 当调用Vue.use方法的啥时候 该方法会自动执行
  // 并且把Vue构造函数当成实参传入
  install(Vue) {
    // console.log(Vue)
    // 展开Vue
    // console.dir(Vue)

    // Vue.component方法可以随便使用
    // 既然方法可用 当然可以在这个位置把需要做全局注册的组件注册为全局

    // 全局注册pageTools
    // 核心api: Vue.component(id, {})
    // Vue.component(id(自定义的), {配置项})
    // 1.先引入pageTools组件
    // 注意： 通过.vue文件默认导出的就是一个完整的组件配置项
    Vue.component('PageTools', PageTools)
    Vue.component('UploadExcel', UploadExcel)
    Vue.component('UploadImg', UploadImg)
    Vue.component('ImgPlaceHolder', ImgPlaceHolder)
    Vue.component('ScreenFull', ScreenFull)
    Vue.component('Lang', Lang)
    // ...可以注册任何你想注册为全局可用的组件
    // 只要你想使用Vue构造函数身上的方法或者属性做一些事情 就可以考虑插件的形式
    Vue.component('HButton', HButton)
  }
}

// 2.函数定义
/* export const plugin2 = (vue) => {
  console.log('plugin2的', vue)
} */
export function plugin2(vue) {
  console.log('插件2被注册实参为：', vue)
}
